1. Field of the Invention
The present invention relates generally to an improved data processing system and more specifically to a computer implemented method, system, and computer usable program code for improving vital product data recollection in a data processing system during an initial program load.
2. Description of the Related Art
Today, complex computer systems are made up of many different components, which must be identified to the operating system software stack running on those complex computer systems. In server systems, the firmware running on a service processor (SP) is responsible for collecting vital product data (VPD) from each of the resources or field replaceable units (FRUs) in the complex computer system, such as, for example, a central electronics complex (CEC). A CEC enclosure houses, for example, system processors, memory, an SP, disk drives, media bays, input/output (I/O) slots, and associated components. VPD collection by the SP for each of the FRUs provides the operating system software stack with a structured inventory of the CEC. The SP reads the VPD from the FRUs during a genesis boot of the SP. The VPD is cached within the SP when only portions of the computer system are powered on by the control supply. Completion of the SP boot results in a state called SP standby. In this standby state, the SP is functional, but the main processors, memory, and I/O controllers are not yet powered on.
Once a power on request is sent to the SP, the desire is to get the entire CEC powered on, initialized, code loaded, and running, which is known as an initial program load (IPL), as quickly as possible. Because some FRUs may be removed, replaced, or added to a CEC while the system is in the SP standby state, it is necessary for the SP firmware to verify that the VPD passed up to the operating system software stack is in fact the VPD that represents the resources installed in the CEC at the time the system was powered on.